using UnityEngine;

namespace Data
{
    public static class ScriptableObjectHelper
    {
        private static string dataFileResDirectory = "Data"; 
        private static FixedBubbleData _fixedBubbleData;
        private static BulletData _bulletData;
        private static GlobalData _globalData;

        public static FixedBubbleData GetFixedBubbleData(bool getRandomNewOne = false)
        {
            if (_fixedBubbleData == null || getRandomNewOne)
            {
                var arrayData = Resources.LoadAll<FixedBubbleData>(dataFileResDirectory);
                if (arrayData.Length > 0)
                {
                    _fixedBubbleData = arrayData[Random.Range(0, arrayData.Length)];
                }
            }
            return _fixedBubbleData;
        }

        public static BulletData GetBulletData()
        {
            if (_bulletData == null)
            {
                var arrayData = Resources.LoadAll<BulletData>(dataFileResDirectory);
                if (arrayData.Length > 0)
                {
                    _bulletData = arrayData[0];
                }
            }
            return _bulletData;
        }
        
        // public static GlobalData GetGlobalData()
        // {
        //     if (_globalData == null)
        //     {
        //         var arrayData = Resources.LoadAll<GlobalData>(dataFileResDirectory);
        //         if (arrayData.Length > 0)
        //         {
        //             _globalData = arrayData[0];
        //         }
        //     }
        //     return _globalData;
        // }
    }
}